home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / Archives / GNU / ags_000.lha / gs261gdevilbm.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-07-15  |  1.2 KB  |  62 lines

  1. /*
  2.  *
  3.  */
  4.  
  5. #define RowBytes(cols)        ( ( ( (int)(cols) + 15 ) / 16 ) * 2 )
  6.  
  7. /* definitions for BMHD */
  8.  
  9. struct BitMapHeader
  10. {
  11.     unsigned short w, h;
  12.     short x, y;
  13.     unsigned char nPlanes, masking, compression, pad1;
  14.     unsigned short transparentColor;
  15.     unsigned char xAspect, yAspect;
  16.     short pageWidth, pageHeight;
  17. };
  18.  
  19. #define mskNone            0
  20. #define mskHasMask        1
  21. #define mskHasTransparentColor    2
  22. #define mskLasso        3
  23.  
  24. #define cmpNone            0
  25. #define cmpByteRun1        1
  26.  
  27. #define ID_ILBM            MAKE_ID('I','L','B','M')
  28. #define ID_CMAP            MAKE_ID('C','M','A','P')
  29. #define ID_BMHD                 MAKE_ID('B','M','H','D')
  30. #define ID_BODY                 MAKE_ID('B','O','D','Y')
  31.  
  32. /* A4 paper is 8.4" x 11.7". */
  33. #ifdef DINA4
  34. #define WIDTH_10THS 84
  35. #define HEIGHT_10THS 117
  36. #else
  37. #define WIDTH_10THS 85 
  38. #define HEIGHT_10THS 110
  39. #endif
  40. #undef DINA4
  41.  
  42.  
  43. /* 
  44.  * protos
  45.  */
  46. struct Library *OpenLibrary( UBYTE *libName, unsigned long version );
  47. void CloseLibrary( struct Library *library );
  48. BPTR Open( UBYTE *name, long accessMode );
  49. LONG Close( BPTR file );
  50.  
  51. /* 
  52.  * device operations
  53.  */
  54. #define bdev  ((ilbm_device *)pdev)
  55.  
  56. #define SETRGB(r,g,b) {\
  57.  bdev->palette[bdev->ncols][0]=r;\
  58.  bdev->palette[bdev->ncols][1]=g;\
  59.  bdev->palette[bdev->ncols][2]=b;\
  60.  bdev->ncols++;}
  61.  
  62.